package com.crm.service.messageprompt;

import com.crm.model.entity.contractManager.CustomerContract;
import com.crm.model.entity.messageprompt.MessagePrompt;
import com.crm.model.vo.messageprompt.MessagePromptVO;
import java.util.Date;
import java.util.List;

public interface MessagePromptDbService {


    /**
     * @Description: 获取消息提示列表
     * @Param: []
     * @Author: lixq-f
     * @Date: 2021/5/18
    **/
    List<MessagePromptVO> queryMessagePromptList(String accountId, Date startTm, Date endTm);


    /**
     * @Description: 更新消息状态为已读
     * @Param: [id]
     * @Return: java.lang.Boolean
     * @Author: lixq-f
     * @Date: 2021/5/18
    **/
    Boolean updateMessageState(MessagePrompt messagePrompt);


    /**
     * @Description: 未读消息数
     * @Param: []
     * @Return: java.lang.Integer
     * @Author: lixq-f
     * @Date: 2021/5/18
    **/
    Integer unreadMessageCount(String accountId, Date startTm, Date endTm);

    /**
     * 插入消息表
     * @param messagePrompt
     */
    void insertMessagePrompt(MessagePrompt messagePrompt);

    /**
     * 根据类型插入消息
     * @param contract 合同
     * @param type 类型 1回款 2退款
     */
    void insertMsg(CustomerContract contract, Integer type);
}
